import axios from 'axios';

// 获取 token 的示例函数
function getToken() {
  return localStorage.getItem('token'); // 假设 token 存储在 localStorage
}

// 创建axios实例
const request = axios.create({
  baseURL: 'http://localhost:3000', // 例如 'https://api.example.com'
  timeout: 10000 // 请求超时时间
});

// 请求拦截器
request.interceptors.request.use(
  config => {
    // 在这里可以添加一些请求前的逻辑，比如设置token
    config.headers['Authorization'] = 'Bearer ' + getToken();
    return config;
  },
  error => {
	
    // 处理请求错误
    return Promise.reject(error);
  }
);

// 响应拦截器
request.interceptors.response.use(
  response => {
    // 任何HTTP状态码为2xx的响应数据都会触发此函数
    // 可以在这里进行一些统一的处理
	// 处理响应错误
	  if (response.data.code === 401) {
		// 如果返回的code是401，则跳转到登录页面
		uni.reLaunch({
		  url: '/pages/login/login'
		});
	  }
    return response.data;
  },
  error => {
    // 任何超出2xx的HTTP状态码都会触发此函数
    // 处理响应错误

    return Promise.reject(error);
  }
);

export default request;